package com.iot.core.data.entity;

import com.iot.core.data.BaseEntity;
import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Table;
import io.swagger.v3.oas.annotations.media.Schema;

import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Size;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;


@Data
@Schema(name = "机构表",description = "")
@Table(value ="htdept")
public class HtDept extends BaseEntity {


    @Schema(name = "父编号",description = "1000研发后台 2000 单位平台 3000主管平台  4000厂家平台")
    private  Long  pid ;

    @Schema(name = "机构顶级编号",description = "")
    private  Long  rootId ;

    @Schema(name = "平台编号",description = "")
    private  Long  htplatId ;

    @Schema(name = "机构名称",description = "")
    @NotBlank(message = "机构名称不能为空")
    @Size(min =0,max = 100,message = "长度范围0-100")
    private  String  name ="";

    @Schema(name = "区域编号",description = "")
    private  Long  htareaId ;

    @Schema(name = "地址",description = "")
    @Size(min =0,max = 100,message = "长度范围0-100")
    private  String  address ="";

    @Schema(name = "联系人",description = "")
    @Size(min =0,max = 50,message = "长度范围0-50")
    private  String  dutyperson ="";

    @Schema(name = "联系电话",description = "")
    @Size(min =0,max = 40,message = "长度范围0-40")
    private  String  tel ="";

    @Schema(name = "备注",description = "")
    private  String  memo ="";

    @Schema(name = "照片",description = "")
    private  String  url ="";

    @Schema(name = "状态",description = "启用、停用")
    @Size(min =0,max = 10,message = "长度范围0-10")
    private  String  state ="";

    @Schema(name = "经度",description = "")
    private BigDecimal lng ;

    @Schema(name = "纬度",description = "")
    private  BigDecimal  lat ;




    @Schema(name = "创建日期",description = "")
    private  Date  crtDt ;

    @Schema(name = "创建人编号",description = "")
    private  Long  crtUid =0L;

    @Schema(name = "机构编号",description = "")
    private  Long  crtDid =0L;

    @Schema(name = "修改日期",description = "")
    private  Date  edtDt ;

    @Schema(name = "修改人编号",description = "")
    private  Long  edtUid =0L;

    @Schema(name = "Gid",description = "")
    private  String  gid ="";

    @Schema(name = "删除标志",description = "")
    @Column(isLogicDelete = true)
    private  boolean  deleted  ;

}
